// async function fn1() {
//   // return 100;  // 相当于 return Promise.resovle(100)
//   return Promise.resolve(200);
// }

// const res1 = fn1(); // 执行async函数，返回的是一个Promise对象
// // console.log("res1:", res1); // Promise对象
// res1.then((data) => {
//   console.log("data", data); // 100 200
// });

// !(async function () {
//   const p1 = Promise.resolve(300);
//   const data = await p1; // await 相当于 Promise的then
//   console.log("data", data); // 300
// })();

// !(async function () {
//   const data1 = await 400; // await 相当于 Promise.resolve(400)
//   console.log("data1", data1); // 400
// })();

// async function fn1() {
//   // return 100;  // 相当于 return Promise.resovle(100)
//   return Promise.resolve(200);
// }
// !(async function () {
//   const data2 = await fn1(); // await 跟上async函数
//   console.log("data2", data2); // 200
// })();

// !(async function () {
//   const p4 = Promise.reject("err1"); // rejected 状态
//   try {
//     const res = await p4;
//     console.log(res);
//   } catch (ex) {
//     console.error(ex); // try...catch相当于 Promise的catch
//   }
// })();

!(async function () {
  const p4 = Promise.reject("err1"); // rejected 状态
  const res = await p4; // await -> then
  console.log("res", res); // 不会执行到这一步
})();
